table of contents
PAPI_set_multiplex(3) | PAPI | PAPI_set_multiplex(3) |
NAME¶
PAPI_get_multiplex - get the multiplexing status of specified event set PAPI_set_multiplex - convert a standard event set to a multiplexed event set
SYNOPSIS¶
C Interface
#include <papi.h> int PAPI_get_multiplex(int EventSet); int PAPI_set_multiplex(int EventSet);
Fortran Interface
#include fpapi.h PAPIF_get_multiplex(C_INT EventSet, C_INT check) PAPIF_set_multiplex(C_INT EventSet, C_INT check)
DESCRIPTION¶
PAPI_get_multiplex tests the state of the PAPI_MULTIPLEXING flag in the specified event set, returning TRUE if a PAPI event set is multiplexed, or FALSE if not.
PAPI_set_multiplex converts a standard PAPI event set created by a call to PAPI_create_eventset() into an event set capable of handling multiplexed events. This must be done after calling PAPI_multiplex_init() , but prior to calling PAPI_start(). Events can be added to an event set either before or after converting it into a multiplexed set, but the conversion must be done prior to using it as a multiplexed set.
ARGUMENTS¶
EventSet -- an integer handle for a PAPI event set as created by PAPI_create_eventset(3)
RETURN VALUES¶
PAPI_get_multiplex returns either TRUE (positive non-zero) if multiplexing is enabled for this event set, FALSE (zero) if multiplexing is not enabled, or PAPI_ENOEVST if the specified event set cannot be found.
On success, PAPI_get_multiplex returns PAPI_OK. On error, a non-zero error code is returned, as described below.
ERRORS¶
- PAPI_EINVAL
- One or more of the arguments is invalid, or the EventSet is already multiplexed.
- PAPI_ENOEVST
- The EventSet specified does not exist.
- PAPI_EISRUN
- The EventSet is currently counting events.
- PAPI_ENOMEM
- Insufficient memory to complete the operation.
EXAMPLES¶
retval = PAPI_get_multiplex(EventSet);
if (retval > 0) printf("This event set is ready for multiplexing0")
if (retval == 0) printf("This event set is not enabled for multiplexing0")
if (retval < 0) handle_error(retval);
retval = PAPI_set_multiplex(EventSet);
if ((retval == PAPI_EINVAL) && (PAPI_get_multiplex(EventSet) > 0))
printf("This event set already has multiplexing enabled0);
else if (retval != PAPI_OK) handle_error(retval);
BUGS¶
This function has no known bugs.
SEE ALSO¶
PAPI_multiplex_init(3),PAPI_set_opt(3),PAPI_create_eventset(3)
September, 2004 | PAPI Programmer's Reference |